home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Purity / Purity #42 (1995-01)(PackMAN)(DE)[WB].zip / Purity #42 (1995-01)(PackMAN)(DE)[WB].adf / Includes3v1 / Includes3v1.lha / Hardware / Blit.i < prev    next >
Text File  |  1994-12-04  |  2KB  |  81 lines

  1. {
  2.         Blit.i for PCQ Pascal
  3.  
  4.         include file for blitter
  5. }
  6.  
  7. Const
  8.  
  9.     HSIZEBITS           = 6;
  10.     VSIZEBITS           = 16 - HSIZEBITS;
  11.     HSIZEMASK           = $3F;                  { 2^6 - 1 }
  12.     VSIZEMASK           = $3FF;                 { 2^10 - 1 }
  13.  
  14.     MAXBYTESPERROW      = 128;
  15.  
  16. { definitions for blitter control register 0 }
  17.  
  18.     ABC         = $80;
  19.     ABNC        = $40;
  20.     ANBC        = $20;
  21.     ANBNC       = $10;
  22.     NABC        = $08;
  23.     NABNC       = $04;
  24.     NANBC       = $02;
  25.     NANBNC      = $01;
  26.  
  27. { some commonly used operations }
  28.  
  29.     A_OR_B      = ABC + ANBC + NABC + ABNC + ANBNC + NABNC;
  30.     A_OR_C      = ABC + NABC + ABNC + ANBC + NANBC + ANBNC;
  31.     A_XOR_C     = NABC + ABNC + NANBC + ANBNC;
  32.     A_TO_D      = ABC + ANBC + ABNC + ANBNC;
  33.  
  34.     BC0B_DEST   = 8;
  35.     BC0B_SRCC   = 9;
  36.     BC0B_SRCB   = 10;
  37.     BC0B_SRCA   = 11;
  38.     BC0F_DEST   = $100;
  39.     BC0F_SRCC   = $200;
  40.     BC0F_SRCB   = $400;
  41.     BC0F_SRCA   = $800;
  42.  
  43.     BC1F_DESC   = 2;            { blitter descend direction }
  44.  
  45.     DEST        = $100;
  46.     SRCC        = $200;
  47.     SRCB        = $400;
  48.     SRCA        = $800;
  49.  
  50.     ASHIFTSHIFT = 12;           { bits to right align ashift value }
  51.     BSHIFTSHIFT = 12;           { bits to right align bshift value }
  52.  
  53. { definations for blitter control register 1 }
  54.  
  55.     LINEMODE    = $01;
  56.     FILL_OR     = $08;
  57.     FILL_XOR    = $10;
  58.     FILL_CARRYIN = $04;
  59.     ONEDOT      = $02;          { one dot per horizontal line }
  60.     OVFLAG      = $20;
  61.     SIGNFLAG    = $40;
  62.     BLITREVERSE = $02;
  63.  
  64.     SUD         = $10;
  65.     SUL         = $08;
  66.     AUL         = $04;
  67.  
  68.     OCTANT8     = 24;
  69.     OCTANT7     = 4;
  70.     OCTANT6     = 12;
  71.     OCTANT5     = 28;
  72.     OCTANT4     = 20;
  73.     OCTANT3     = 8;
  74.     OCTANT2     = 0;
  75.     OCTANT1     = 16;
  76.  
  77. Type
  78.  
  79. { stuff for blit qeuer }
  80.  
  81.